// 配置路由相关的信息
import Vue from 'vue'
import VueRouter from 'vue-router'
// import Home from '../components/Home.vue'
// import About from '../components/About.vue'
// import User from '../components/User.vue'

// 使用路由懒加载，目的是打包后将不同模块js抽离，在某个页面用到的时候再进行加载，从而提高网页运行速度
const Home = () => import('../components/Home.vue')
const About = () => import('../components/About.vue')
const User = () => import('../components/User.vue')

// 1.通过vue.use(插件)，来安装这个插件
Vue.use(VueRouter)

// 2.创建VueRouter对象
const router = new VueRouter({
    // 配置路由和组件之间的应用关系
    routes: [
        {
            path: '/',
            //component: Home,
            redirect: '/home' // 使用重定向默认显示首页
        },
        {
            meta: { title: '首页' },
            path: '/home',
            component: Home,
            children: [
                // {
                //     path: '',
                //     redirect: 'news' // 嵌套路由的默认显示
                // },
                {
                    meta: { title: '新闻' },
                    path: 'news',
                    component: () => import('../components/HomeNews.vue')
                },
                {
                    meta: { title: '消息' },
                    path: 'messages',
                    component: () => import('../components/HomeMessages.vue')
                }
            ]
        },
        {
            meta: { title: '关于' },
            path: '/about',
            component: About,
            // 路由独享的守卫
            beforeEnter: (to, from, next) => {
                console.log('关于路由页面的beforeEnter')
                next() // 不加next则中断
            }
        },
        {
            meta: { title: '用户' },
            path: '/user/:userIdabc',
            component: User
        },
        {
            meta: { title: '档案' },
            path: '/profile',
            component: () => import('../components/Profile.vue')
        }
    ],
    mode: 'history', // 不使用location.hash的方式，改用history，去掉url中的#
    linkActiveClass: 'activeClass', // 从路由配置处于活动的标签样式class
})

// 3.将router对象传入到Vue实例
export default router